package com.yxinsur.imc.business.dto;

import lombok.Data;
import lombok.ToString;

import javax.validation.Valid;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.List;

/**
* Title: Broker.java
* Description: 代理人批量导入EXCEL实体
* Company: 壹心科技[经代开发组]
* @date 2020-10-16
* @version 1.0
 */
@Data
@ToString
public class OrderDto implements Serializable {

	private static final long serialVersionUID = 1L;

	//请求唯一标识，不可重复
    @NotBlank(message="唯一请求标识[requestNo]不能为空")
	private String requestNo;

	//租户key，不可重复
    @NotBlank(message="租户KEY[tenantKey]不能为空")
	private String tenantKey;

    //保单基本信息
    @Valid
    @NotNull(message="保单基本信息[basic]不能为空")
    private Basic basic;

    //缴费银行信息
    @Valid
    @NotNull(message="缴费银行信息[bankInfo]不能为空")
    private BankInfo bankInfo;

    //险种信息
    @Valid
    @NotEmpty(message="险种信息[products]不能为空")
    private List<Product> products;

    //投保人信息
    @Valid
    @NotNull(message="投保人信息[applicants]不能为空")
    private List<Applicant> applicants;

    //被保人信息
    @Valid
    @NotNull(message="被保人信息[insurants]不能为空")
    private List<Insurant> insurants;

    //受益人信息
    private List<Favour> favours;

    //影像件信息
    @Valid
    private List<Img> imgs;

}